A data center may comprise many servers housed in a single location or multiple locations. Several servers may be placed within a rack, and these servers may be configured to perform specific tasks, such as on-line banking, on-line retail, web-based services, or other services.
Increasingly, data centers are used as commodities. Computing services or resources within a data center, for example, can be leased to outside sources. Such sources can enjoy the benefits of the computing resources of the data center without purchasing and maintaining the servers. For this reason, data centers may also be called a utility data center (UDC). The amount a customer is charged to utilize the computing services of a UDC may be dependent on many factors, such as overall volume of computing within the UDC, the frequency at which computing requests are made, the amount of time the UDC resources are needed, and the like.
In order to meet the demands of computing resources in a cost-effective manner, a UDC owner needs to determine the optimal size of a data center based on the rate of utilization. In other words, a UDC owner needs to know the optimal number of servers needed to satisfy the needs of customers while at the same time maintaining a profitable operation of the UDC. By way of illustration only, if a cluster of servers comprises ten computers and allocation needs for a class of customer exceed ten computers at certain times of the day, then regardless of the variance of the requests from the class, the cluster would be unable to handle the class. Likewise for multiple classes of customers, if the total number of computers needed for multiple classes at particular times of the day exceeds the available limit, the cluster would be unable to accept and run applications from the classes. If, on the other hand, the combined peak demands from the multiple classes do not exceed the number of computers, the UDC operator may have too many computers for the requisite demand.